/**
 * 技术分类树节点（用于 ApiTreeSelect）
 * 对应后端 SelectTreeModel 结构
 */
export interface TechnologyTreeNode {
  key: string;           // 唯一标识
  value: string;         // 值（通常与 key 相同）
  title: string;         // 显示文本
  label?: string;        // 可选标签（兼容某些组件）
  parentId?: string;     // 父节点 ID
  isLeaf?: boolean;      // 是否叶子节点
  children?: TechnologyTreeNode[];  // 子节点列表
  disabled?: boolean;    // 是否禁用（前端扩展）
}

/**
 * 年度专利数据
 */
export interface YearPatentData {
  year: number;
  count: number;
}

/**
 * 技术趋势数据
 */
export interface TechnologyTrendData {
  technologyId: string;
  technologyName: string;
  yearDataList: YearPatentData[];
  totalCount: number;
}

/**
 * 趋势查询结果
 */
export interface TrendQueryResult {
  trendDataList: TechnologyTrendData[];
  yearRange: {
    startYear: number;
    endYear: number;
  };
}

/**
 * 图表数据系列
 */
export interface ChartSeries {
  name: string;
  type: 'line' | 'bar';
  data: number[];
  smooth?: boolean;
  lineStyle?: any;
  itemStyle?: any;
}

/**
 * 查询参数
 */
export interface TrendQueryParams {
  selectedTechnologies: string[];
  startYear: number;
  endYear: number;
  chartType: 'line' | 'bar' | 'mixed';
}
